home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / doom / quake2.zip / TF1_2SRC.ZIP / QUAKE / FORTRESS / SOURCE / TFORTHLP.QC < prev    next >
Text File  |  1996-09-10  |  14KB  |  386 lines

  1. /* 
  2.     TeamFortress 1.2    -    7/9/96
  3.  
  4.     Robin Walker, John Cook, Ian Caughley.
  5.  
  6.     Functions handling all the help displaying for TeamFortress. 
  7. */
  8. // Prototypes
  9. // Help Functions
  10. void(float helpindex) TeamFortress_Help;
  11. void() TeamFortress_MOTD;
  12. void() TeamFortress_HelpIndex;
  13. void() TeamFortress_HelpWeapon;
  14. void() TeamFortress_HelpClass;
  15. void() TeamFortress_HelpItem;
  16. void() TeamFortress_HelpGeneral;
  17. void() TeamFortress_HelpPreImp;
  18. void() TeamFortress_HelpShowPreImp;
  19. void() TeamFortress_HelpShowImp;
  20. void() TeamFortress_HelpSkin;
  21. void() TeamFortress_HelpTeam;
  22. void() TeamFortress_HelpToggle;
  23.  
  24. //=========================================================================
  25. // HELP FUNCTIONS
  26. //=========================================================================
  27. //=========================================================================
  28. // Help for the Impulse commands in TeamFortress
  29. void(float helpindex) TeamFortress_Help =
  30. {
  31.     // prevent help pre-impulse from triggering anything else
  32.     self.impulse = 0;
  33.     self.last_impulse = 0;
  34.  
  35.     if (helpindex == TF_HELP)
  36.         TeamFortress_HelpIndex();
  37.     if (helpindex == TF_HELP_GENERAL)
  38.         TeamFortress_HelpGeneral();
  39.     if (helpindex == TF_HELP_CLASS)
  40.         TeamFortress_HelpClass();
  41.     if (helpindex == TF_HELP_WEAPON)
  42.         TeamFortress_HelpWeapon();
  43.     if (helpindex == TF_HELP_ITEM)
  44.         TeamFortress_HelpItem();
  45.     if (helpindex == TF_HELP_PREIMP)
  46.         TeamFortress_HelpPreImp();
  47.     if (helpindex == TF_HELP_PREIMP_SHOW)
  48.         TeamFortress_HelpShowPreImp();
  49.     if (helpindex == TF_HELP_IMP_SHOW)
  50.         TeamFortress_HelpShowImp();
  51.     if (helpindex == TF_HELP_SKIN)
  52.         TeamFortress_HelpSkin();
  53.     if (helpindex == TF_HELP_TEAM)
  54.         TeamFortress_HelpTeam();
  55.     if (helpindex == TF_HELP_TOGGLE)
  56.         TeamFortress_HelpToggle();
  57. };
  58.  
  59. void() TeamFortress_MOTD =
  60. {
  61.     local string ya;
  62.  
  63.     // check if player already has aliases
  64.     if (self.motd == 17)
  65.     {
  66.         stuffcmd(self,"is_aliased\n");
  67.     }
  68.     if (self.motd <= 20)
  69.     {
  70.         self.motd = self.motd + 1;
  71.         return;
  72.     }
  73.  
  74.     if (self.motd == 21)
  75.     {
  76.         if (self.impulse != TF_ALIAS_CHECK)
  77.             sprint(self,"\n\n\n");
  78.  
  79.         // If you run this is a server, you're welcome to change to initial
  80.         // message here, but _please_ leave in the first line.
  81.         // display welcome
  82.         // sprint this bit so it gets put into the console log
  83.         sprint(self, "binding aliases...\n");
  84.         sprint(self,"Type helpme for Help. :)\n");
  85.         centerprint(self, "Welcome to TeamFortress! v1.2\nRobin Walker, John Cook, Ian Caughley.\n======================================\nType helpme for Help. :)");
  86.         self.motd = 22;
  87.  
  88.         // check if player already has aliases
  89.            if (self.impulse == TF_ALIAS_CHECK)
  90.         {
  91.             self.impulse = 0;
  92.             return;
  93.         }
  94.  
  95.         // Stuff Aliases
  96.         // Help
  97.         if (coop || deathmatch)
  98.             TeamFortress_Alias("helpme",TF_HELP, TF_HELP);
  99.         else
  100.             TeamFortress_Alias("helpme",TF_HELP, 0);
  101.         TeamFortress_Alias("generalhelp",TF_HELP,TF_HELP_GENERAL);
  102.         TeamFortress_Alias("classhelp",TF_HELP,TF_HELP_CLASS);
  103.         TeamFortress_Alias("weaponhelp",TF_HELP,TF_HELP_WEAPON);
  104.         TeamFortress_Alias("itemhelp",TF_HELP,TF_HELP_ITEM);
  105.         TeamFortress_Alias("preimphelp",TF_HELP,TF_HELP_PREIMP);
  106.         TeamFortress_Alias("showpreimp",TF_HELP,TF_HELP_PREIMP_SHOW);
  107.         TeamFortress_Alias("showimp",TF_HELP,TF_HELP_IMP_SHOW);
  108.         TeamFortress_Alias("skinhelp",TF_HELP,TF_HELP_SKIN);
  109.         TeamFortress_Alias("teamhelp",TF_HELP,TF_HELP_TEAM);
  110.         TeamFortress_Alias("togglehelp",TF_HELP,TF_HELP_TOGGLE);
  111.  
  112.         // General
  113.         TeamFortress_Alias("inv",TF_INVENTORY,0);
  114.         TeamFortress_Alias("showtf",TF_SHOWTF,0);
  115.  
  116.         // Class Changing
  117.         TeamFortress_Alias("scout",(TF_CHANGEPC+PC_SCOUT),0);
  118.         TeamFortress_Alias("sniper",(TF_CHANGEPC+PC_SNIPER),0);
  119.         TeamFortress_Alias("soldier",(TF_CHANGEPC+PC_SOLDIER),0);
  120.         TeamFortress_Alias("demoman",(TF_CHANGEPC+PC_DEMOMAN),0);
  121.         TeamFortress_Alias("medic",(TF_CHANGEPC+PC_MEDIC),0);
  122.         TeamFortress_Alias("hwguy",(TF_CHANGEPC+PC_HVYWEAP),0);
  123.         TeamFortress_Alias("randompc",(TF_CHANGEPC+PC_RANDOM),0);
  124.  
  125.         // Grenades
  126.         TeamFortress_Alias("primeone", TF_GRENADE_1,0);
  127.         TeamFortress_Alias("primetwo", TF_GRENADE_2,0);
  128.         TeamFortress_Alias("throwgren", TF_GRENADE_T,0);
  129.  
  130.         // Pipebombs
  131.         TeamFortress_Alias("detpipe", TF_PB_DETONATE,0);
  132.  
  133.         // Sample aliases for the Scanner
  134.         TeamFortress_Alias("scan10", TF_SCAN, 10);
  135.         TeamFortress_Alias("scan50", TF_SCAN, 50);
  136.         TeamFortress_Alias("scan250", TF_SCAN, 250);
  137.         TeamFortress_Alias("scanf", TF_SCAN, TF_SCAN_FRIENDLY);
  138.         TeamFortress_Alias("scane", TF_SCAN, TF_SCAN_ENEMY);
  139.  
  140.         // Sample aliases for the Detpack
  141.         TeamFortress_Alias("det5", TF_DETPACK, 5);
  142.         TeamFortress_Alias("det20", TF_DETPACK, 20);
  143.         TeamFortress_Alias("det250", TF_DETPACK, 250);
  144.  
  145.         // Toggleable Game Settings
  146.         TeamFortress_Alias("t_skin", TF_TOGGLE, TF_TOGGLE_SKIN);
  147.         TeamFortress_Alias("t_classpersist", TF_TOGGLE, TF_TOGGLE_CLASS_PERSIST);
  148.         TeamFortress_Alias("t_cheatcheck", TF_TOGGLE, TF_TOGGLE_CHEATCHECK);
  149.         TeamFortress_Alias("t_fortressmap", TF_TOGGLE, TF_TOGGLE_FORTRESSMAP);
  150.         TeamFortress_Alias("t_respawndelay", TF_TOGGLE, TF_TOGGLE_RESPAWNDELAY);
  151.         TeamFortress_Alias("t_autoteam", TF_TOGGLE, TF_TOGGLE_AUTOTEAM);
  152.  
  153.         // Skin handlers
  154.         TeamFortress_Alias("nextskin", TF_SKIN_NEXT, 0);
  155.         TeamFortress_Alias("prevskin", TF_SKIN_PREV, 0);
  156.         TeamFortress_Alias("skin10", TF_MULTISKIN, 10);
  157.         TeamFortress_Alias("skin20", TF_MULTISKIN, 20);
  158.  
  159.         // Team handlers
  160.         TeamFortress_Alias("imin1",TF_TEAM, 1);
  161.         TeamFortress_Alias("imin2",TF_TEAM, 2);
  162.         TeamFortress_Alias("imin3",TF_TEAM, 3);
  163.         TeamFortress_Alias("imin4",TF_TEAM, 4);
  164.         TeamFortress_Alias("showscores",TF_TEAM, TF_TEAM_SCORES);
  165.  
  166.         // Set up the alias check
  167.         TeamFortress_Alias("is_aliased", TF_ALIAS_CHECK, 0);
  168.     }
  169. };
  170.  
  171. //=========================================================================
  172. // Help displayed when someone types the alais "classhelp"
  173. void() TeamFortress_HelpClass =
  174. {
  175.     sprint(self, "Commands to choose Playerclass:\n");
  176.     sprint(self, "scout    : Scout\n");
  177.     sprint(self, "sniper   : Sniper\n");
  178.     sprint(self, "soldier  : Soldier\n");
  179.     sprint(self, "demoman  : Demolitions Man\n");
  180.     sprint(self, "medic    : Combat Medic\n");
  181.     sprint(self, "hwguy    : Heavy Weapons Guy\n");
  182.     sprint(self, "randompc : Random Playerclass\n");
  183. };
  184.  
  185. //=========================================================================
  186. // Help displayed when someone types the alais "itemhelp"
  187. void() TeamFortress_HelpItem =
  188. {
  189.     sprint(self, "Commands to use new items:\n");
  190.     sprint(self, "det5    : Set detpack for 5 sec\n");
  191.     sprint(self, "det20   : Set detpack for 20 sec\n");
  192.     sprint(self, "det250  : Set detpack for 250 sec\n");
  193.     sprint(self, "scan10  : Scan using 10 energy\n");
  194.     sprint(self, "scan50  : Scan using 50 energy\n");
  195.     sprint(self, "scan250 : Scan using 250 energy\n");
  196.     sprint(self, "scanf   : Toggle scanning of Friendlies\n");
  197.     sprint(self, "scane   : Toggle scanning of Enemies\n");
  198. };
  199.  
  200. //=========================================================================
  201. // Help displayed when someone types the alais "weaponhelp"
  202. void() TeamFortress_HelpWeapon =
  203. {
  204.     sprint(self, "Commands to use new weapons:\n");
  205.     sprint(self, "primeone   : Prime a Grenade of Type 1\n");
  206.     sprint(self, "primetwo   : Prime a Grenade of Type 2\n");
  207.     sprint(self, "throwgren  : Throw the primed Grenade\n");
  208.     sprint(self, "detpipe    : Detonate pipebombs\n");
  209. };
  210.  
  211. //=========================================================================
  212. // Help displayed when someone types the alais "preimphelp"
  213. void() TeamFortress_HelpPreImp =
  214. {
  215.     local string imp;
  216.  
  217.     sprint(self, "This is fairly advanced. If you don't know how to make aliases ");
  218.     sprint(self, "then just ignore this section. You can play the game just fine without it.\n");
  219.     sprint(self, "Pre-impulses are impulses that are used before another impulse that ");
  220.     sprint(self, "change the interpretation of the second impulse. ");
  221.     sprint(self, "e.g. The scanner uses a Pre-Impulse. The impulse that is given _after_ ");
  222.     sprint(self, "the Pre-Impulse is interpreted by the scanner to be the amount of energy ");
  223.     sprint(self, "you wish to spend on the scan.\n");
  224.     sprint(self, "There are already aliases bound which use the Scanner, and other Pre-Impulse ");
  225.     sprint(self, "items, but you may wish to make your own using different times//energy//etc.\n");
  226.     sprint(self, "If so, you want to make an alias which does the Pre-Impulse, then does a Wait, ");
  227.     sprint(self, "then does the impulse specifying time//energy//etc. Then bind the alias to a key.\n");
  228.     sprint(self, "e.g. alias scan56 \"impulse ");
  229.     imp = ftos(TF_SCAN);
  230.     sprint(self, imp);
  231.     sprint(self, ";wait; impulse 56\"\n");
  232.     sprint(self, "See the readme.txt for more help on Pre-Impulses.\n");
  233.     sprint(self, "To see a list of all Pre-Impulses being used at the moment, type showpreimp.\n");
  234.     sprint(self, "Use pageup in the console to see all of the above :)\n");
  235. };
  236.  
  237. //=========================================================================
  238. // Help displayed when someone types the alais "showpreimp"
  239. void() TeamFortress_HelpShowPreImp =
  240. {
  241.     local string imp;
  242.  
  243.     sprint(self, "Pre-Impulses being used:\n");
  244.     sprint(self, "Scanner Pre-Imp   : ");
  245.     imp = ftos(TF_SCAN);
  246.     sprint(self, imp);
  247.     sprint(self, "\nDetpack Pre-Imp   : ");
  248.     imp = ftos(TF_DETPACK);
  249.     sprint(self, imp);
  250.     sprint(self, "\nMultiskin Pre-Imp : ");
  251.     imp = ftos(TF_MULTISKIN);           
  252.     sprint(self, imp);
  253.     sprint(self, "\nToggle Pre-Imp    : ");
  254.     imp = ftos(TF_TOGGLE);
  255.     sprint(self, imp);
  256.     sprint(self, "\nHelp Pre-Imp      : ");
  257.     imp = ftos(TF_HELP);
  258.     sprint(self, imp);
  259.     sprint(self, "\n");
  260. };
  261.  
  262. //=========================================================================
  263. // Help displayed when someone types the alias "helpme"
  264. void() TeamFortress_HelpIndex =
  265. {
  266.     sprint(self, "Help Index\n");
  267.     sprint(self, "==========\n");
  268.     sprint(self, "generalhelp : General Command Help.\n");
  269.     sprint(self, "classhelp   : Player Classes Help.\n");
  270.     sprint(self, "weaponhelp  : Weapon Command Help.\n");
  271.     sprint(self, "itemhelp    : Item Command Help.\n");
  272.     sprint(self, "skinhelp    : Skin Selection Help.\n");
  273.     sprint(self, "togglehelp  : Option Toggling Help.\n");
  274.     sprint(self, "teamhelp    : TeamPlay Help.\n");
  275.     sprint(self, "preimphelp  : Pre-Impulse Summary.\n");
  276.     sprint(self, "showpreimp  : Show all Pre-Impulses.\n");
  277.     sprint(self, "showimp     : Show all Impulses.\n");
  278.     sprint(self, "===================================\n");
  279.     sprint(self, "Comments : walker@netspace.net.au\n");
  280.     sprint(self, "Full command descriptions in Readme.txt\n");
  281.     sprint(self, "Use pageup in the console to see all the help :)\n");
  282. };
  283.  
  284. //=========================================================================
  285. // Help displayed when someone types the alias "generalhelp"
  286. void() TeamFortress_HelpGeneral =
  287. {
  288.     sprint(self, "inv       : Display your inventory.\n");
  289.     sprint(self, "showtf    : Display toggleflags state.\n");
  290.     sprint(self, "==\n");
  291.     sprint(self, "Comments : walker@netspace.net.au\n");
  292.     sprint(self, "Full command descriptions in Readme.txt\n");
  293.     sprint(self, "Use pageup in the console to see all the impulses above :)\n");
  294.  
  295. };
  296.  
  297. //=========================================================================
  298. // Help displayed when someone types the alais "skinhelp"
  299. void() TeamFortress_HelpSkin =
  300. {
  301.     sprint(self, "Commands for skin selection are:\n");
  302.     sprint(self, "nextskin  : See if you can guess :)\n");
  303.     sprint(self, "prevskin  : See above.\n");
  304.     sprint(self, "skin10    : Set your skin to no 10\n");
  305.     sprint(self, "skin20    : Set your skin to no 20\n");
  306.     sprint(self, "These all have no effect if Classkin is On. Instead,");
  307.     sprint(self, "your skin will be assigned to you based on your class.");
  308. };
  309.  
  310.  
  311. //=========================================================================
  312. // Help displayed when someone types the alais "showimp"
  313. void() TeamFortress_HelpShowImp =
  314. {
  315.     local string imp;
  316.  
  317.     sprint(self, "Impulses being used:\n");
  318.     sprint(self, "Inventory       : ");
  319.     imp = ftos(TF_INVENTORY);
  320.     sprint(self, imp);
  321.     sprint(self, "\nPrime Grenade 1 : ");
  322.     imp = ftos(TF_GRENADE_1);
  323.     sprint(self, imp);
  324.     sprint(self, "\nPrime Grenade 2 : ");
  325.     imp = ftos(TF_GRENADE_2);
  326.     sprint(self, imp);
  327.     sprint(self, "\nThrow Grenade   : ");
  328.     imp = ftos(TF_GRENADE_T);
  329.     sprint(self, imp);
  330.     sprint(self, "\nDet.Pipebombs   : ");
  331.     imp = ftos(TF_PB_DETONATE);
  332.     sprint(self, imp);
  333.     sprint(self, "\nScout           : ");
  334.     imp = ftos(TF_CHANGEPC + PC_SCOUT);
  335.     sprint(self, imp);
  336.     sprint(self, "\nSniper          : ");
  337.     imp = ftos(TF_CHANGEPC + PC_SNIPER);
  338.     sprint(self, imp);
  339.     sprint(self, "\nSoldier         : ");
  340.     imp = ftos(TF_CHANGEPC + PC_SOLDIER);
  341.     sprint(self, imp);
  342.     sprint(self, "\nDemolitions Man : ");
  343.     imp = ftos(TF_CHANGEPC + PC_DEMOMAN);
  344.     sprint(self, imp);
  345.     sprint(self, "\nCombat Medic    : ");
  346.     imp = ftos(TF_CHANGEPC + PC_MEDIC);
  347.     sprint(self, imp);
  348.     sprint(self, "\nHeavy WeaponGuy : ");
  349.     imp = ftos(TF_CHANGEPC + PC_HVYWEAP);
  350.     sprint(self, imp);
  351.     sprint(self, "\nNext Skin       : ");
  352.     imp = ftos(TF_SKIN_NEXT);
  353.     sprint(self, imp);
  354.     sprint(self, "\nPrevious Skin   : ");
  355.     imp = ftos(TF_SKIN_PREV);
  356.     sprint(self, imp);
  357.     
  358.     sprint(self, "\nPre-Impulses are used for more advanced uses.\n");
  359.     sprint(self, "Type preimphelp to see the Pre-Impulse Summary.\n");
  360. };
  361.  
  362. //=========================================================================
  363. // Help displayed when someone types the alais "teamhelp"
  364. void() TeamFortress_HelpTeam =
  365. {
  366.     sprint(self, "Commands to use teams:\n");
  367.     sprint(self, "imin1   :   join team 1\n");
  368.     sprint(self, "imin2   :   join team 2\n");
  369.     sprint(self, "imin3   :   join team 3\n");
  370.     sprint(self, "imin4   :   join team 4\n");
  371.     sprint(self, "showscores: show team scores\n");
  372. };
  373.  
  374. //=========================================================================
  375. // Help displayed when someone types the alais "togglehelp"
  376. void() TeamFortress_HelpToggle =
  377. {
  378.     sprint(self, "ToggleFlag commands:\n");
  379.     sprint(self, "t_skin        : Toggle Skin\n");
  380.     sprint(self, "t_classpersist: Toggle ClassP\n");
  381.     sprint(self, "t_cheatcheck  : Toggle Check\n");
  382.     sprint(self, "t_fortressmap : Toggle FMap\n");
  383.     sprint(self, "t_respawndelay: Cycle Delays\n\n");
  384.     sprint(self, "showtf : Display toggleflags state.\n");
  385.     sprint(self, "Read the readme.txt for full info.\n");
  386. };